home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 October: Mac OS SDK / Dev.CD Oct 96 SDK / Dev.CD Oct 96 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODFDev / ODF / Found / FWStream / Include / SLRanSin.xih < prev    next >
Encoding:
Text File  |  1996-08-16  |  7.7 KB  |  297 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: SLRanSin.xih.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emitxih.dll: 2.33
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *     File:        SLRanSin.idl
  13.  * 
  14.  *     Contains:    Interface for abstract random access sink class
  15.  * 
  16.  *     Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  17.  * 
  18.  */
  19.  
  20.  
  21. #ifndef SOM_FW_ORandomAccessSink_xih
  22. #define SOM_FW_ORandomAccessSink_xih
  23.  
  24. #include <somcls.xh>
  25. #include <somcm.xh>
  26.  
  27. /*
  28.  * Passthru lines: File: "C.xih", "before"
  29.  */
  30.  
  31.  
  32. #ifndef SOM_FW_ORandomAccessSink_xh
  33. #include <SLRanSin.xh>
  34. #endif
  35.  
  36. /*
  37.  * Set the scope of methods functions
  38.  */
  39. #ifndef SOM_Scope
  40. #define SOM_Scope extern "C"
  41. #endif
  42.  
  43. #define FW_ORandomAccessSink_MaxNoMethods 4
  44.  
  45. /*
  46.  * -- Instance Data
  47.  */
  48. typedef void FW_ORandomAccessSinkData;
  49.  
  50. /*
  51.  * Trace/Debug macro
  52.  */
  53. #ifndef FW_ORandomAccessSinkMethodDebug
  54. #define FW_ORandomAccessSinkMethodDebug(c,m) SOMMethodDebug(c,m)
  55. #endif
  56.  
  57. /*
  58.  * -- Method Macros for use in Method Procedures
  59.  */
  60. #ifdef METHOD_MACROS
  61.   #define _GetReadableBytes somSelf->GetReadableBytes
  62.   #define _Read somSelf->Read
  63.   #define _GetWritableBytes somSelf->GetWritableBytes
  64.   #define _Write somSelf->Write
  65.   #define _somInit somSelf->somInit
  66.   #define _somUninit somSelf->somUninit
  67.   #define _somInit somSelf->somInit
  68.   #define _somUninit somSelf->somUninit
  69.   #define _somDuplicateReference somSelf->somDuplicateReference
  70.   #define _somCompareReference somSelf->somCompareReference
  71.   #define _somRelease somSelf->somRelease
  72.   #define _somFree somSelf->somFree
  73.   #define _somCanDelete somSelf->somCanDelete
  74.   #define _somGetClass somSelf->somGetClass
  75.   #define _somGetClassName somSelf->somGetClassName
  76.   #define _somGetSize somSelf->somGetSize
  77.   #define _somIsA somSelf->somIsA
  78.   #define _somRespondsTo somSelf->somRespondsTo
  79.   #define _somIsInstanceOf somSelf->somIsInstanceOf
  80.   #define _somDispatch somSelf->somDispatch
  81.   #define _somClassDispatch somSelf->somClassDispatch
  82.   #define _somCastObj somSelf->somCastObj
  83.   #define _somResetObj somSelf->somResetObj
  84.   #define _somPrintSelf somSelf->somPrintSelf
  85.   #define _somDumpSelf somSelf->somDumpSelf
  86.   #define _somDumpSelfInt somSelf->somDumpSelfInt
  87.   #define _GetLength somSelf->GetLength
  88.   #define _SetLength somSelf->SetLength
  89.   #define _GetPosition somSelf->GetPosition
  90.   #define _SetPosition somSelf->SetPosition
  91.   #define _GetReadableBytes somSelf->GetReadableBytes
  92. #endif
  93.  
  94.  
  95. /*
  96.  * Introduced methods
  97.  */
  98.  
  99. /* New Method: GetLength */
  100. SOM_Scope long  SOMLINK FW_ORandomAccessSink__GetLength(FW_ORandomAccessSink *somSelf, Environment *ev);
  101.  
  102. /* New Method: SetLength */
  103. SOM_Scope void  SOMLINK FW_ORandomAccessSink__SetLength(FW_ORandomAccessSink *somSelf, Environment *ev,
  104.         long length);
  105.  
  106. /* New Method: GetPosition */
  107. SOM_Scope long  SOMLINK FW_ORandomAccessSink__GetPosition(FW_ORandomAccessSink *somSelf, Environment *ev);
  108.  
  109. /* New Method: SetPosition */
  110. SOM_Scope void  SOMLINK FW_ORandomAccessSink__SetPosition(FW_ORandomAccessSink *somSelf, Environment *ev,
  111.         long position);
  112.  
  113. /*
  114.  * Overridden methods
  115.  */
  116.  
  117. /* Overridden method: GetReadableBytes */
  118. SOM_Scope long  SOMLINK FW_ORandomAccessSink__GetReadableBytes(FW_ORandomAccessSink *somSelf, Environment *ev);
  119. SOMEXTERN typedef long   (* SOMLINK somTD_xih_FW_ORandomAccessSink_GetReadableBytes)(FW_ORandomAccessSink *somSelf, Environment *ev);
  120. inline long  SOMLINK FW_ORandomAccessSink_parent_FW_OSink_GetReadableBytes(FW_ORandomAccessSink *somSelf, Environment *ev)
  121. {
  122. #ifdef SOMCHKEXCEPT
  123.   long __somRetVal =   ((somTD_xih_FW_ORandomAccessSink_GetReadableBytes)
  124.     somParentNumResolve((somClassDataStructure*)&FW_ORandomAccessSinkClassData, 1, FW_OSinkClassData.GetReadableBytes))
  125.         (somSelf,ev);
  126.   SOMCHKEXCEPT;
  127.   return __somRetVal;
  128. #else
  129.   return  ((somTD_xih_FW_ORandomAccessSink_GetReadableBytes)
  130.     somParentNumResolve((somClassDataStructure*)&FW_ORandomAccessSinkClassData, 1, FW_OSinkClassData.GetReadableBytes))
  131.         (somSelf,ev);
  132. #endif
  133. }
  134. #define FW_ORandomAccessSink_parents_GetReadableBytes(arg0,arg1) \
  135.   (void) FW_ORandomAccessSink_parent_FW_OSink_GetReadableBytes(arg0,arg1)
  136.  
  137. /*
  138.  * -- Primary Implementation File Support
  139.  */
  140. #if (defined(FW_ORandomAccessSink_Class_Source) || defined(SOM_Module_slransin_Source))
  141.  
  142. /*
  143.  * -- The FW_ORandomAccessSink ClassData Structure
  144.  */
  145.  
  146. #if PRAGMA_IMPORT_SUPPORTED
  147. #pragma export list FW_ORandomAccessSinkClassData
  148. #endif
  149.  
  150.  
  151. /*
  152.  * -- The FW_ORandomAccessSink Class Ancestor Table
  153.  */
  154. static somClassDataStructure * SOMDLINK FW_ORandomAccessSinkClassAncestors [] = {
  155.     (somClassDataStructure*) & FW_OSinkClassData,    /* parent */
  156. };
  157.  
  158.  
  159. /*
  160.  * -- The FW_ORandomAccessSink Override ProcPtr Implementations Table
  161.  */
  162. static somMethodPtr FW_ORandomAccessSinkOverrideProcs [] = {
  163.     (somMethodPtr) FW_ORandomAccessSink__GetReadableBytes,    /* override class FW_OSink */
  164. };
  165.  
  166.  
  167. static void FW_ORandomAccessSinkDLLD ( void ) { }
  168.  
  169.  
  170. /*
  171.  * -- The FW_ORandomAccessSink Static Class Info Master Table
  172.  */
  173. static somStaticClassInfo FW_ORandomAccessSinkSCI = {
  174.       70,    /* layout version */
  175.     (somClassDataStructure*)  & FW_ORandomAccessSinkClassData,    /* main token table */
  176.       FW_ORandomAccessSinkOverrideProcs,    /* override proc implemenations table */
  177.       FW_ORandomAccessSinkClassAncestors,    /* ancestor table */
  178.       FW_ORandomAccessSinkDLLD,    /* DLLdesignator */
  179.       0,    /* no special procs */
  180.       0,    /* rtci slot */
  181.       0,    /* count slot */
  182.       0,    /* dynamic ancestry */
  183.       0,    /* free */
  184.       0,    /* free */
  185.       0,    /* free */
  186.       0,    /* free */
  187.  
  188. /*
  189.  * -- The FW_ORandomAccessSink Counts Table
  190.  */
  191.     (somStaticClassCounts *)
  192.         "\x00\x00\x00\x01"    /* majorversion */
  193.         "\x00\x00\x00\x00"    /* minorversion */
  194.         "\x00\x00\x00\x01"    /* flags */
  195.             "\x00\x00"    /* type code alignment */
  196.             "\x00\x04"    /* classTokenCount */
  197.             "\x00\x01"    /* numDirectParents */
  198.             "\x00\x00"    /* numMetaClasses */
  199.             "\x00\x01"    /* numOverriddenAncestors */
  200.             "\x00\x00"    /* numMigratedMethods */
  201.             "\x00\x00"    /* numSelectedInherited */
  202.             "\x00\x00"    /* numUnused */
  203.             "\x00\x00"    /* free */
  204.             "\x00\x00"    /* free */
  205.             "\x00\x00"    /* free */
  206.             "\x00"    /* free */
  207.                 ,
  208.  
  209.     {
  210.       "FW_ORandomAccessSink",    /* the class name */
  211.       0, /* no class instance data */
  212.  
  213. /*
  214.  * -- The FW_ORandomAccessSink Parent Versions Table
  215.  */
  216.     (somParentVersions *)
  217.         "\x00\x00\x00\x01"    /* majorversion */
  218.         "\x00\x00\x00\x00"    /* minorversion */
  219.                 ,
  220.  
  221.  
  222. /*
  223.  * -- The FW_ORandomAccessSink Token Slot Usage Table
  224.  */
  225.     (somSlotUsage *)
  226.         "\x00",
  227.  
  228.  
  229. /*
  230.  * -- The FW_ORandomAccessSink Method Signature Info
  231.  */
  232.     (somSignatureInfo *)
  233.         "\x02\x05"    /* GetLength */
  234.          "\x03\x07"    /* SetLength */
  235.          "\x02\x05"    /* GetPosition */
  236.          "\x03\x07"    /* SetPosition */
  237.              ,
  238.  
  239.  
  240. /*
  241.  * -- The FW_ORandomAccessSink Class Method Names
  242.  */
  243.         "GetLength\0"
  244.         "SetLength\0"
  245.         "GetPosition\0"
  246.         "SetPosition\0"
  247.             ,
  248.  
  249.  
  250. /*
  251.  * -- The FW_ORandomAccessSink Override Slots Table
  252.  */
  253.     (somOverrideData *)
  254.         "\x00\x00\x00\x01"    /* parent FW_OSink has 1 overrides */
  255.             "\x00\x02"    /* GetReadableBytes */
  256.                 ,
  257.  
  258.       0,    /* no migrated methods table */
  259.       0,    /* no selected inherited */
  260.       0,    /* unused */
  261.  
  262.       0,    /* free */
  263.       0,    /* free */
  264.       0,    /* free */
  265.       0,    /* free */
  266.     },
  267. };
  268.  
  269. /*
  270.  * -- The FW_ORandomAccessSink ClassData Structure
  271.  */
  272. struct FW_ORandomAccessSinkClassDataStructure SOMDLINK FW_ORandomAccessSinkClassData = {
  273.       0,            /* zero */
  274.     & FW_ORandomAccessSinkSCI,        /* SCI link */
  275.       0,            /* instanceDataToken */
  276.       0,            /* reserved */
  277.       0,            /* reserved */
  278.       0,            /* reserved */
  279.     (somMToken) FW_ORandomAccessSink__GetLength,    /* GetLength:method */
  280.     (somMToken) FW_ORandomAccessSink__SetLength,    /* SetLength:method */
  281.     (somMToken) FW_ORandomAccessSink__GetPosition,    /* GetPosition:method */
  282.     (somMToken) FW_ORandomAccessSink__SetPosition,    /* SetPosition:method */
  283. };
  284.  
  285.  
  286. /*
  287.  * Functions for attributes.
  288.  */
  289.  
  290. /*
  291.  * Macros for initializers/destructors
  292.  */
  293.  
  294. #endif /* Primary Implementation Support */
  295.  
  296. #endif       /* SOM_FW_ORandomAccessSink_xih */
  297.